home *** CD-ROM | disk | FTP | other *** search
/ Power CD-ROM!! 8 / Power CD-ROM 8.iso / prgmming / pbvl110 / window.bi < prev   
Encoding:
Text File  |  1994-11-09  |  7.4 KB  |  190 lines

  1. ' PB/VISION(tm) LITE - (c) Copyright 1994 DSE Software Publishing
  2. ' SHAREWARE EVALUATION COPY
  3.  
  4. $DYNAMIC
  5. DEFINT A-Z
  6.  
  7. ' APP FLAGS
  8.  
  9. %TITLEBAR = &H100
  10. %MENUBAR = &H8
  11. %STATUSBAR = &H8000
  12.  
  13. ' WINDOW FLAGS
  14.  
  15. %AUTOCLOSE = &H2000
  16. %AUTOSCROLL = &H8000
  17. %BOTTOMBAR = &H80
  18. %CONTROL = &H200
  19. %DRAGBAR = &H800
  20. %HSCROLLBAR = &H20
  21. %MINMAX = &H400
  22. %NOHORZBORDER = &H2
  23. %NOVERTBORDER = &H8
  24. %NOCOLOR = &H1000
  25. %NOHIDE = &H4000
  26. %NOSELECT = &H40
  27. %RESIZE = &H4
  28. %SHADOW = &H1
  29. %VSCROLLBAR = &H10
  30.  
  31. TYPE winTYPE
  32.  row AS BYTE            ' screen position where window is displayed
  33.  col AS BYTE
  34.  rows AS BYTE            ' dimensions of the displayed text portion of window
  35.  cols AS BYTE
  36.  orows AS BYTE            ' window text dimensions before re-sizing
  37.  ocols AS BYTE
  38.  vrow AS BYTE            ' starting positions of viewport into window
  39.  vcol AS BYTE
  40.  vrows AS BYTE            ' actual virtual dimensions of window
  41.  vcols AS BYTE
  42.  winattr AS BYTE        ' default color attribute of window contents
  43.  borderattr AS INTEGER        ' attribute of window border
  44.  titleattr AS BYTE        ' attribute of window title
  45.  border AS BYTE            ' border style
  46.  titleLen AS BYTE        ' length of title string
  47.  Title AS STRING * 40        ' text of window title
  48.  vbarPos AS BYTE        ' window scrollbar guage (1% to 100%)
  49.  hbarPos AS BYTE
  50.  flags AS INTEGER        ' flags used when window opened
  51.  winmode AS BYTE        ' INTERNAL - DO NOT CHANGE
  52.  UserObject AS INTEGER        ' User Object Pointer
  53.  unused2 AS INTEGER        ' FUTURE USE
  54.  WI AS BYTE            ' window position relative to top most window
  55.  ObjPtr AS INTEGER        ' handle of attached window object code
  56.  internal1 AS BYTE        ' current item position (if menu or form)
  57.  signature AS INTEGER        ' signature of window
  58.  cpos AS INTEGER        ' encoded window cursor position (see WINLOCATE)
  59.  cattr AS BYTE            ' current window print attribute (see WINCOLOR)
  60.  bufferHandle AS INTEGER    ' handle of window buffer
  61.  changed AS BYTE        ' flag indicating window needs to be refreshed
  62.  unused3 AS INTEGER        ' FUTURE USE
  63.  listPtr AS INTEGER        ' top of list (if list style routine)
  64.  winProcOff AS INTEGER        ' seg/off address of attached PB/VISION driver(s)
  65.  winProcSeg AS INTEGER
  66.  winUserfOff AS INTEGER        ' seg/off address of attached user code
  67.  winUserSeg AS INTEGER
  68.  srows AS BYTE            ' screen dimensions of the displayed of window
  69.  scols AS BYTE
  70. END TYPE
  71.  
  72. TYPE appTYPE
  73.  attr AS BYTE            ' fill-pattern color
  74.  Pattern AS BYTE        ' background fill-pattern
  75.  titleattr AS BYTE        ' color of program title (if enabled)
  76.  Title AS STRING * 80        ' text of program title (if enabled)
  77.  menuAttr AS BYTE        ' color of menu bar
  78.  statusAttr AS BYTE        ' color of status bar
  79.  internal1 AS BYTE        ' DO NOT CHANGE
  80.  rows AS BYTE            ' screen rows
  81.  flags AS INTEGER        ' aplication initialization flags
  82.  graphicsMouse AS BYTE        ' DO NOT CHANGE
  83.  internal4 AS BYTE        ' DO NOT CHANGE
  84.  internal5 AS BYTE        ' DO NOT CHANGE
  85.  videoSeg AS INTEGER        ' DO NOT CHANGE
  86.  videoOff AS INTEGER        '    ""
  87.  videoHeight AS INTEGER        '    ""
  88.  videoWidth AS INTEGER        '    ""
  89.  videoLength AS INTEGER        '    ""
  90.  winRow AS BYTE            '    ""
  91.  winRows AS BYTE        '    ""
  92.  winOffset AS INTEGER        '    ""
  93.  forceRefresh AS BYTE        '    ""
  94.  titleRow AS BYTE        '    ""
  95.  menuRow AS BYTE        '    ""
  96.  graphicsMode AS BYTE        ' 0 = text, 1 = graphics
  97. END TYPE
  98.  
  99. TYPE menucolorTYPE
  100.  kolor AS INTEGER
  101.  borderattr AS INTEGER
  102.  titleattr AS BYTE
  103.  highlight AS INTEGER
  104.  sepbar AS BYTE
  105.  cursor AS BYTE
  106.  border AS BYTE
  107.  flags AS INTEGER
  108. END TYPE
  109.  
  110. DECLARE FUNCTION attr% (BYVAL fore%, BYVAL back%)
  111.  
  112. DECLARE SUB appClose ()
  113. DECLARE SUB appInit ()
  114. DECLARE SUB appPause ()
  115. DECLARE SUB appRefresh ()
  116. DECLARE SUB appResume ()
  117. DECLARE SUB appFontInit ()
  118. DECLARE SUB appTitle (BYVAL kolor%, title$)
  119. DECLARE SUB MapChar (BYVAL char%, BYVAL icon%)
  120. DECLARE SUB MapUserChar (BYVAL char%, icon$)
  121. DECLARE SUB winClose (BYVAL winHandle%)
  122. DECLARE SUB winCLS (BYVAL winHandle%)
  123. DECLARE SUB winColor (BYVAL winHandle%, BYVAL kolor%)
  124. DECLARE FUNCTION winCopy% (BYVAL winHandle%)
  125. DECLARE SUB winCursor (BYVAL winHandle%, BYVAL row%, BYVAL col%)
  126. DECLARE SUB winDeleteLine (BYVAL winHandle%, BYVAL LineNo%)
  127. DECLARE SUB winDrawBox (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL rows%, BYVAL cols%, BYVAL kolor%, BYVAL border%)
  128. DECLARE SUB winFill (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL rows%, BYVAL cols%, BYVAL kolor%, BYVAL c%)
  129. DECLARE SUB winGetInfo (BYVAL winHandle%, win AS winTYPE)
  130. DECLARE SUB winGrab (BYVAL winHandle%)
  131. DECLARE SUB winHide (BYVAL winHandle%)
  132. DECLARE SUB winHotPrint (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL Attr1%, text$)
  133. DECLARE SUB winInsertLine (BYVAL winHandle%, BYVAL LineNo%)
  134. DECLARE SUB winInstallCode (BYVAL winHandle%, BYVAL segment??, BYVAL offset??)
  135. DECLARE SUB winLocate (BYVAL winHandle%, BYVAL row%, BYVAL col%)
  136. DECLARE SUB winLock (BYVAL handle%)
  137. DECLARE SUB winMain (BYVAL winHandle%)
  138. DECLARE SUB winMinimize (BYVAL winHandle%)
  139. DECLARE SUB winMaximize (BYVAL winHandle%)
  140. DECLARE SUB winNormalize (BYVAL winHandle%)
  141. DECLARE SUB winModify (BYVAL winHandle%, BYVAL kolor%, BYVAL border%, BYVAL borderKolor%, BYVAL titleKolor%, BYVAL flags%)
  142. DECLARE SUB winMove (BYVAL winHandle%, BYVAL row%, BYVAL col%)
  143. DECLARE SUB winNext ()
  144. DECLARE FUNCTION winOpen% (BYVAL rows%, BYVAL cols%, BYVAL kolor%, BYVAL border%, BYVAL borderKolor%, Title$, BYVAL titleKolor%, BYVAL flags%)
  145. DECLARE FUNCTION winPopup% (BYVAL row%, BYVAL col%, BYVAL rows%, BYVAL cols%, BYVAL kolor%, BYVAL border%, BYVAL borderKolor%, Title$, BYVAL titleKolor%, BYVAL flags%)
  146. DECLARE SUB winPos (BYVAL winHandle%, row%, col%)
  147. DECLARE SUB winPrev ()
  148. DECLARE SUB winPrint (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL kolor%, text$)
  149. DECLARE SUB winPrintV (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL kolor%, text$)
  150. DECLARE SUB winRecolor (BYVAL winHandle%, BYVAL kolor%)
  151. DECLARE SUB winRefresh (BYVAL winHandle%)
  152. DECLARE SUB winRefreshMode (BYVAL mode%)
  153. DECLARE SUB winResize (BYVAL winHandle%, BYVAL rows%, BYVAL cols%)
  154. DECLARE SUB winScrollBarGet (BYVAL winHandle%, vpos%, hpos%)
  155. DECLARE SUB winScrollBarSet (BYVAL winHandle%, BYVAL vpos%, BYVAL hpos%)
  156. DECLARE SUB winSet (BYVAL winHandle%)
  157. DECLARE SUB winSetInfo (BYVAL winHandle%, win AS winTYPE)
  158. DECLARE SUB winShow (BYVAL winHandle%, BYVAL row%, BYVAL col%, BYVAL rows%, BYVAL cols%)
  159. DECLARE SUB winSwapColor (BYVAL winHandle%, BYVAL oldKolor%, BYVAL newKolor%)
  160. DECLARE SUB winTitle (BYVAL winHandle%, BYVAL kolor%, Title$)
  161. DECLARE SUB winViewPort (BYVAL winHandle%, BYVAL row%, BYVAL col%)
  162. DECLARE FUNCTION winWho% (BYVAL row%, BYVAL col%, wrow%, wcol%)
  163. DECLARE SUB winWrite (BYVAL winHandle%, text$)
  164. DECLARE SUB winWriteChar (BYVAL winHandle%, BYVAL char%)
  165. DECLARE SUB winWriteLn (BYVAL winHandle%, text$)
  166. DECLARE FUNCTION VideoBoard% ()
  167.  
  168.  DIM app AS appTYPE
  169.  DIM tempWin AS winTYPE
  170.  DIM refreshEnable AS INTEGER, lockWinP AS BYTE
  171.  DIM WI AS INTEGER, WINGET AS INTEGER, topWinBufH AS INTEGER, currentWinH AS INTEGER
  172.  DIM currentWinS AS INTEGER, currentWinO AS INTEGER
  173.  DIM currentWinLen AS INTEGER, currentWinChars AS INTEGER, currentWinCols AS INTEGER
  174.  DIM pbvvideoseg AS INTEGER, pbvvideooff AS INTEGER
  175.  
  176. $IF %ISPBU
  177.  EXTERNAL app, tempWin
  178.  EXTERNAL refreshEnable, lockWinP
  179.  EXTERNAL WI, WINGET, topWinBufH, currentWinH, currentWinS, currentWinO, currentWinLen, currentWinChars, currentWinCols
  180.  EXTERNAL pbvvideoseg, pbvvideooff
  181. $ELSE
  182.  PUBLIC app, tempWin
  183.  PUBLIC refreshEnable, lockWinP
  184.  PUBLIC WI, WINGET, topWinBufH, currentWinH, currentWinS, currentWinO, currentWinLen, currentWinChars, currentWinCols
  185.  PUBLIC pbvvideoseg, pbvvideooff
  186.  
  187.  $LINK ".\PBVLITE.PBL"
  188.  
  189. $ENDIF
  190.